Methods and systems for positioning animated images within a dynamic keyboard interface

ABSTRACT

The present disclosure is directed to positioning animated images within a dynamic keyboard interface. In particular, the methods and systems of the present disclosure can: receive, from a user device on which an application is executed, data indicating a context of: the application, and/or a dynamic keyboard interface provided in association with the application; identify, based at least in part on the data indicating the context, a plurality of different animated images, including an animated image comprising an advertisement, for presentation by the dynamic keyboard interface; communicate, to the user device, data indicating the plurality of different animated images; receive, from the user device, data indicating a selection of the animated image comprising the advertisement; and determine, based at least in part on the data indicating the selection and the data indicating the context, a position within the dynamic keyboard interface for presenting the animated image comprising the advertisement.

PRIORITY CLAIM

This application claims priority under 35 U.S.C. § 371 to and thebenefit of International Patent Application No. PCT/US2019/047235 filedon Aug. 20, 2019, which claims priority to and the benefit of U.S.Provisional Patent Application No. 62/725,648 filed on Aug. 31, 2018.Applicant claims priority to and the benefit of each of suchapplications and incorporates all such applications herein by referencein their entirety.

FIELD

The present disclosure relates generally to animated images. Moreparticularly, the present disclosure relates to positioning animatedimages within a dynamic keyboard interface.

BACKGROUND

Computing devices (e.g., desktop computers, laptop computers, tabletcomputers, smartphones, wearable computing devices, and/or the like) areubiquitous in modern society. They can support communications betweentheir users, provide their users with information about theirenvironments, current events, the world at large, and/or the like. Amyriad of different types of interfaces enable users to interact withsuch devices. For example, many devices include a touchscreen andprovide an interface (e.g., including user-selectable options, akeyboard, and/or the like) configured to enable users to inputinformation. Animated images (e.g., graphics interchange format (GIF)images, and/or the like) can include data describing a series of orderedimage frames that when rendered produce a moving image, and/or the like.Animated images can be utilized to express, convey, communicate, and/orthe like thoughts, feelings, concepts, emotions, and/or the like.

SUMMARY

Aspects and advantages of embodiments of the present disclosure will beset forth in part in the following description, or can be learned fromthe description, or can be learned through practice of the embodiments.

One example aspect of the present disclosure is directed to acomputer-implemented method. The method can include receiving, by one ormore computing devices and from a user device on which an application isexecuted, data indicating a context of: the application, and/or adynamic keyboard interface provided in association with the application.The method can also include identifying, by the computing device(s) andbased at least in part on the data indicating the context, a pluralityof different animated images for presentation by the dynamic keyboardinterface in association with the application. The plurality ofdifferent animated images can comprise an animated image including anadvertisement. The method can further include communicating, by thecomputing device(s) and to the user device, data indicating theplurality of different animated images. The method can further includereceiving, by the computing device(s) and from the user device, dataindicating a selection of the animated image including the advertisementfrom amongst the plurality of different animated images. The method canfurther include determining, by the computing device(s) and based atleast in part on the data indicating the selection and the dataindicating the context, a position within the dynamic keyboard interfacefor presenting the animated image including the advertisement inresponse to data indicating a subsequent context of the dynamic keyboardinterface, the application, and/or a different and distinct applicationin association with which the dynamic keyboard interface is provided.

Another example aspect of the present disclosure is directed to asystem. The system can include one or more processors and a memorystoring instructions that when executed by the processor(s) cause thesystem to perform operations. The operations can include receiving dataindicating a selection, from amongst a plurality of different animatedimages presented by a dynamic keyboard interface, of an animated imageincluding an advertisement. The operations can also include determining,based at least in part on the data indicating the selection of theanimated image including the advertisement, a selection frequency forthe animated image including the advertisement. The operations canfurther include determining, based at least in part on the selectionfrequency for the animated image including the advertisement and one ormore selection frequencies for a position within the dynamic keyboardinterface, to present the animated image including the advertisement inthe position within the dynamic keyboard interface.

A further example aspect of the present disclosure is directed to one ormore non-transitory computer-readable media. The non-transitorycomputer-readable media can comprise instructions that when executed byone or more computing devices cause the computing device(s) to performoperations. The operations can include receiving, from a user device onwhich an application is executed, data indicating a context of: theapplication, and/or a dynamic keyboard interface provided in associationwith the application. The operations can also include receiving, fromthe user device, data indicating a selection, from amongst a pluralityof different animated images presented by the dynamic keyboard interfacein association with the application, of an animated image including anadvertisement. The operations can further include determining, based atleast in part on the data indicating the context, one or more selectionfrequencies for a position within the dynamic keyboard interface. Theoperations can further include determining, based at least in part onthe data indicating the selection of the animated image including theadvertisement, a selection frequency for the animated image includingthe advertisement. The operations can further include determining, basedat least in part on the selection frequency for the animated imageincluding the advertisement and the one or more selection frequenciesfor the position within the dynamic keyboard interface, to present theanimated image including the advertisement in the position within thedynamic keyboard interface.

Other aspects of the present disclosure are directed to various systems,apparatuses, non-transitory computer-readable media, user interfaces,and electronic devices.

These and other features, aspects, and advantages of various embodimentsof the present disclosure will become better understood with referenceto the following description and appended claims. The accompanyingdrawings, which are incorporated in and constitute a part of thisspecification, illustrate example embodiments of the present disclosureand, together with the description, serve to explain the relatedprinciples.

BRIEF DESCRIPTION OF THE DRAWINGS

Detailed discussion of embodiments directed to one of ordinary skill inthe art is set forth in the specification, which makes reference to theappended figures, in which:

FIG. 1 depicts an example computing environment according to exampleembodiments of the present disclosure;

FIGS. 2A-E depict an example event sequence according to exampleembodiments of the present disclosure;

FIGS. 3A-Y depict example graphical user interfaces (GUIs) according toexample embodiments of the present disclosure; and

FIG. 4 depicts an example method according to example embodiments of thepresent disclosure.

DETAILED DESCRIPTION

Example aspects of the present disclosure are directed to positioninganimated images within a dynamic keyboard interface. In particular,animated images can be identified based at least in part on a context ofthe dynamic keyboard interface (e.g., one or more search terms input viathe dynamic keyboard interface, data presented by and/or input into oneor more applications in association with which the dynamic keyboardinterface is provided, and/or the like); positioned based at least inpart on the context, their selection frequencies, and/or the like; andpresented (e.g., for browsing, selection, and/or the like) by thedynamic keyboard interface in association with an application.

For example, a dynamic keyboard interface (e.g., for use via atouchscreen, and/or the like) can be provided (e.g., as part of anoperating system (OS), third-party application, plugin, and/or the like)to one or more user devices (e.g., computers, smartphones, tabletcomputing devices, wearable computing devices, and/or the like). One ormore aspects of the dynamic keyboard interface can be configured toprovide access (e.g., via search functionality, suggestionfunctionality, browsing functionality, and/or the like) to a corpus ofanimated images (e.g., graphics interchange format (GIF) images, and/orthe like), for example, uploaded to, stored by, indexed by, managed by,and/or the like a remotely located computing system (e.g., one or morecomputing devices, and/or the like).

A user (e.g., utilizing a user device providing the dynamic keyboardinterface, and/or the like) can perform one or more actions that providea context, for example, of the user device, the dynamic keyboardinterface, an application (e.g., a messaging application, and/or thelike) in association with which the dynamic keyboard interface isprovided, and/or the like. For example, the user can input one or moresearch terms via the dynamic keyboard interface, interact with theapplication via its interface, and/or the like. Data indicating thecontext can be generated (e.g., by the user device, the dynamic keyboardinterface, and/or the like), communicated to the computing system (e.g.,via one or more networks, and/or the like), and received by thecomputing system, which can update one or more records regarding thecorpus of animated images based at least in part on such data.

Based at least in part on the data indicating the context, the record(s)regarding the corpus of animated images, and/or the like, the computingsystem can identify a plurality of different animated images associatedwith the context for presentation by the dynamic keyboard interface inassociation with the application (e.g., animated images relevant,responsive, and/or the like to the context).

In some embodiments, one or more of the plurality of different animatedimages associated with the context can include one or moreadvertisements (e.g., for one or more products, services, media contentitems, and/or the like). The advertisements can be for one or moreproducts, services, media content items, and/or the like. For example,such animated image(s) can include advertisement content, data (e.g., alink, and/or the like) configured to cause an application executed bythe computing device(s) (e.g., a web browser, an application associatedwith the subject, source, and/or the like of the advertisement, and/orthe like) to present, navigate to, and/or the like content associatedwith the advertisement, advertisement content, and/or the like.

The advertisement can be provided by an entity. The computing system cantrack user engagement and/or reaction with respect to the advertisementand/or one or more other animated images. Information describing suchengagement and/or reaction can be automatically collected by thecomputing system and/or transmitted to the entity.

For example, the computing system can determine the one or moreselection frequencies for a particular position within the dynamickeyboard interface based at least in part on data indicating one or moreselection frequencies for one or more animated images previouslypresented in the particular position within the dynamic keyboardinterface. In some embodiments, the animated image(s) previouslypresented in such position can include one or more animated images thatdo not include advertisement content. Thus user engagement of theadvertisement can be determined relative to animated images that havebeen similarly presented to the user.

As another example, engagement metrics can be compared between twodifferent advertisements. More specifically, the animated image(s)previously presented in such position can include one or more animatedimages comprising one or more advertisements different from anadvertisement included in the animated image for which the position isbeing determined. In some embodiments, the computing system candetermine the one or more selection frequencies for such position basedat least in part on the data indicating the previous context.

In some embodiments, the computing system can generate data describing areport for an entity that provided the advertisement included in theanimated image. In some of such embodiments, the report can be generatedbased at least in part on the selection frequency for such animatedimage and the one or more selection frequencies for the position. Insome embodiments, the computing system can communicate the datadescribing the report to a computing device associated with the entitythat provided the advertisement.

In accordance with aspects of the disclosure, for each of one or moreanimated images included in the plurality of different animated imagesassociated with the context, the computing system can determine (e.g.,based at least in part on the data indicating the context, the record(s)regarding the corpus of animated images, and/or the like) a positionwithin the dynamic keyboard interface for presenting the animated image.Data indicating the plurality of different animated images associatedwith the context, their respective determined positions, and/or the likecan be generated (e.g., by the computing system, and/or the like) andcommunicated (e.g., via the network(s), and/or the like) to the dynamickeyboard interface (e.g., the user device, and/or the like), which canpresent the plurality of different animated images associated with thecontext in association with the application based at least in part ontheir respective determined positions. For example, the plurality ofdifferent animated images associated with the context can be presentedin an ordered, sorted, and/or the like fashion (e.g., animated imagesdetermined to be more relevant, responsive, and/or the like to thecontext can be presented earlier, more prominently, and/or the like).

A user can select one or more particular animated images from amongstthe plurality of different animated images associated with the contextvia the dynamic keyboard interface. For example, the user can select oneor more of the particular animated image(s) for communication (e.g.,input, pasting, and/or the like) by the dynamic keyboard interface tothe application. Additionally or alternatively, the user can select oneor more of the particular animated image(s) for future accessibilitywithin the dynamic keyboard interface (e.g., designate such particularanimated image(s) for frequent use, “favorite” them, and/or the like).

Data indicating the selection, selection type (e.g., for communicationto the application, for future accessibility, and/or the like),particular animated image(s) selected, and/or the like can be generated(e.g., by the user device, the dynamic keyboard interface, and/or thelike), communicated to the computing system (e.g., via the network(s),and/or the like), and received by the computing system, which can updatethe record(s) regarding the corpus of animated images based at least inpart on such data.

A user (e.g., utilizing the user device providing the dynamic keyboardinterface, a different and distinct user device providing the dynamickeyboard interface, and/or the like) can perform one or more actionsthat provide a subsequent context, for example, of such user device, thedynamic keyboard interface, the application (e.g., the messagingapplication, and/or the like) in association with which the dynamickeyboard interface is provided, a different and distinct application(e.g., an email application, and/or the like) in association with whichthe dynamic keyboard interface is provided, and/or the like. Forexample, the user can input one or more search terms via the dynamickeyboard interface, interact with such application(s) via theirrespective interface(s), and/or the like. Data indicating the subsequentcontext can be generated (e.g., by the user device, the different anddistinct user device, the dynamic keyboard interface, and/or the like),communicated to the computing system (e.g., via the network(s), and/orthe like), and received by the computing system, which can update therecord(s) regarding the corpus of animated images based at least in parton such data.

Based at least in part on the data indicating the previous context; thedata indicating the subsequent context; the data indicating theselection, selection type, particular animated image(s) selected, and/orthe like; the record(s) regarding the corpus of animated images; and/orthe like, the computing system can identify a plurality of differentanimated images associated with the subsequent context for presentationby the dynamic keyboard interface in association with the applicationand/or the different and distinct application (e.g., animated imagesrelevant, responsive, and/or the like to the subsequent context). Insome embodiments, one or more of the plurality of different animatedimages associated with the subsequent context can include one or moreadvertisements.

In accordance with aspects of the disclosure, for each of one or moreanimated images included in the plurality of different animated imagesassociated with the subsequent context, the computing system candetermine (e.g., based at least in part on the data indicating theprevious context; the data indicating the subsequent context; the dataindicating the selection, selection type, particular animated image(s)selected, and/or the like; the record(s) regarding the corpus ofanimated images; and/or the like) a position within the dynamic keyboardinterface for presenting the animated image.

Data indicating the plurality of different animated images associatedwith the subsequent context, their respective determined positions,and/or the like can be generated (e.g., by the computing system, and/orthe like) and communicated (e.g., via the network(s), and/or the like)to the dynamic keyboard interface (e.g., the user device, the differentand distinct user device, and/or the like), which can present theplurality of different animated images associated with the subsequentcontext in association with the application and/or the different anddistinct application based at least in part on their respectivedetermined positions. For example, the plurality of different animatedimages associated with the subsequent context can be presented in anordered, sorted, and/or the like fashion (e.g., animated imagesdetermined to be more relevant, responsive, and/or the like to thesubsequent context can be presented earlier, more prominently, and/orthe like).

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the subsequent context caninclude one or more of the particular animated image(s) previouslyselected. In some of such embodiments, the position within the dynamickeyboard interface for presenting such particular animated image(s) canbe determined based at least in part on their having been previouslyselected, the context associated with their selection, and/or the like.For example, such particular animated image(s) can be presented earlier,more prominently, and/or the like than they otherwise would have been(e.g., absent their previous selection, and/or the like). In someembodiments, one or more of such particular animated image(s) caninclude one or more advertisements.

In some embodiments, the data indicating the previous context canindicate one or more search terms input via the dynamic keyboardinterface. In some of such embodiments, the data indicating thesubsequent context can indicate at least one of such search term(s)input via the dynamic keyboard interface.

In some embodiments, the data indicating the previous context canindicate data presented by and/or input into the application associatedwith the previous context, and the data indicating the subsequentcontext can indicate data one or more of presented by or input into suchapplication, the different and distinct application, the dynamickeyboard interface, and/or the like. In some of such embodiments, for atleast one animated image of the animated image(s) included in theplurality of different animated images associated with the subsequentcontext, determining the position within the dynamic keyboard interfacefor presenting such animated image can include determining the datapresented by and/or input into the application associated with theprevious context corresponds at least in part to the data one or more ofpresented by or input into such application, the different and distinctapplication, the dynamic keyboard interface, and/or the like.

In some embodiments, for at least one animated image of the animatedimage(s) included in the plurality of different animated imagesassociated with the subsequent context, determining the position withinthe dynamic keyboard interface for presenting such animated image caninclude determining, based at least in part on the data indicating theselection of such animated image, a selection frequency for suchanimated image. In some of such embodiments, the position for suchanimated image can be determined based at least in part on the selectionfrequency for such animated image, one or more selection frequencies forsuch position, and/or the like.

The technology described herein can provide a number of technicaleffects and benefits. For example, as previously indicated, thetechnology described herein can present animated images determined to bemore relevant, responsive, and/or the like to a given context earlier,more prominently, and/or the like, thereby reducing time spent browsingfor, locating, and/or the like such animated images, thus conservingcomputing resources (e.g., energy, processing cycles, network bandwidth,and/or the like).

With reference now to the Figures, example embodiments of the presentdisclosure will be discussed in further detail.

FIG. 1 depicts an example computing environment according to exampleembodiments of the present disclosure.

Referring to FIG. 1, environment 100 can include one or more computingdevices (e.g., one or more desktop computers, laptop computers, tabletcomputers, mobile devices, smartphones, wearable devices, servers,and/or the like). For example, environment 100 can include computingdevices 10, 20, 30, 40, and 50 and computing system 112, which caninclude one or more computing devices. Environment 100 can also includeone or more networks 110 (e.g., one or more wired networks, wirelessnetworks, and/or the like). Network(s) 110 can interface computingdevice(s) 10, 20, 30, 40, and/or 50 with one another and/or withcomputing system 112.

Computing device 10 can include one or more processor(s) 102, one ormore communication interfaces 104, and memory 106 (e.g., one or morehardware components for storing executable instructions, data, and/orthe like). Communication interface(s) 104 can enable computing device 10to communicate with computing device(s) 20, 30, 40, and/or 50 and/orwith computing system 112. Memory 106 can include (e.g., store, and/orthe like) instructions 108. When executed by processor(s) 102,instructions 108 can cause computing device 10 to perform one or moreoperations, functions, and/or the like described herein. It will beappreciated that computing device(s) 20, 30, 40, and/or 50 can includeone or more of the components described above with respect to computingdevice 10.

Computing system 112 can include one or more processor(s) 114, one ormore communication interfaces 116, and memory 118 (e.g., one or morehardware components for storing executable instructions, data, and/orthe like). Communication interface(s) 116 can enable computing system112 to communicate with computing device(s) 10, 20, 30, 40, and/or 50.Memory 118 can include (e.g., store, and/or the like) instructions 120.When executed by processor(s) 114, instructions 120 can cause computingsystem 112 to perform one or more operations, functions, and/or the likedescribed herein.

Unless explicitly indicated otherwise, the operations, functions, and/orthe like described herein can be performed by computing device(s) 10,20, 30, 40, and/or 50 and/or computing system 112 (e.g., by computingdevice 10, 20, 30, 40, or 50, by computing system 112, by a combinationof one or more of computing device(s) 10, 20, 30, 40, and/or 50 and/orcomputing system 112, and/or the like).

FIGS. 2A-E depict an example event sequence according to exampleembodiments of the present disclosure.

Referring to FIG. 2A, at (202), computing device 10 can communicate(e.g., via network(s) 110 (as indicated by the pattern-filled box overthe line extending downward from network(s) 110), and/or the like) datadescribing one or more animated images (e.g., graphics interchangeformat (GIF) images, and/or the like), advertisements, advertisementcontent, contexts in which to present such animated image(s),advertisement(s), advertisement content, and/or the like to computingsystem 112, which can receive and store such data, one or more recordsgenerated based at least in part thereon, and/or the like. For example,computing system 112 can be remotely located from computing device(s)10, 20, 30, 40, and/or 50 and can receive uploads to, store, index,manage, and/or the like a corpus of animated images, one or more recordsregarding such corpus, and/or the like.

Similarly, at (204), computing device 20 can communicate data describingone or more animated images, advertisements, advertisement content,contexts in which to present such animated image(s), advertisement(s),advertisement content, and/or the like to computing system 112, whichcan receive and store such data, one or more records generated based atleast in part thereon, and/or the like; and, at (206), computing device30 can communicate data describing one or more animated images,advertisements, advertisement content, contexts in which to present suchanimated image(s), advertisement(s), advertisement content, and/or thelike to computing system 112, which can receive and store such data, oneor more records generated based at least in part thereon, and/or thelike.

Computing device 40 can be a user device (e.g., one or more associatedcomputing devices at least temporarily associated with a particularuser, user account, and/or the like). Computing device 50 can be a userdevice (e.g., one or more associated computing devices at leasttemporarily associated with a different and distinct user, user account,and/or the like) different and distinct from computing device 40.

Computing device(s) 40 and/or 50 can execute one or more different anddistinct applications. For example, referring to FIG. 3A, computingdevice(s) 40 and/or 50 can execute an application (e.g., a messagingapplication, and/or the like) associated with graphical user interface(GUI) element 302, a different and distinct application (e.g., an emailapplication, and/or the like) associated with element 304, and/or thelike.

Referring to FIG. 3B, in some embodiments (e.g., to mitigate potentialprivacy concerns, and/or the like), one or more users of computingdevice(s) 40 and/or 50 can be provided (e.g., via element 306, and/orthe like) with information regarding collection of certain data, and/orthe like, one or more controls (e.g., via element(s) 308 and/or 310,and/or the like) for allowing the user(s) to make one or more electionsas to if and/or when the methods, systems, functions, operations, and/orthe like described herein can enable collection of certain data, and/orthe like (e.g., presented by and/or input into the application(s), thedynamic keyboard interface described herein, and/or the like).Additionally or alternatively, certain data (e.g., presented by and/orinput into the application(s), the dynamic keyboard interface describedherein, and/or the like) can be treated in one or more ways before beingstored, utilized, and/or the like (e.g., so personally identifiableinformation can be removed, and/or the like). For example, a user'sidentity, data associated therewith, and/or the like can be treated sothat no personally identifiable information can be determined for theuser, and/or the like. Thus, the user(s) can have control over what datais collected about them, how that information is used, what informationthey are provided, and/or the like.

In accordance with aspects of the disclosure, a dynamic keyboardinterface (e.g., for use via a touchscreen, and/or the like) can beprovided (e.g., as part of an operating system (OS), third-partyapplication, plugin, and/or the like) to, by, and/or the like computingdevice(s) 40 and/or 50. For example, referring to FIG. 3C, portion 314of the illustrated GUI can be associated with such a dynamic keyboardinterface. One or more aspects of the dynamic keyboard interface can beconfigured to provide access (e.g., via search functionality, suggestionfunctionality, browsing functionality, and/or the like) to the corpus ofanimated images uploaded to, stored by, indexed by, managed by, and/orthe like computing system 112. The dynamic keyboard interface can beprovided in association with one or more of the application(s) executedby computing device(s) 40 and/or 50. For example, portion 312 can beassociated with the application (e.g., the messaging application, and/orthe like) associated with element 302, and, as illustrated, the dynamickeyboard interface can be provided in association with such application.

Element 316 can correspond to an input area (e.g., for composing amessage, and/or the like), and element 318 can correspond to an optionto communicate the data located in such input area to the applicationassociated with portion 312 (e.g., for subsequent communication overnetwork(s) 110 to a computing device associated with “Joe Friend,”and/or the like).

Element 320 can be configured to cause the dynamic keyboard interface totoggle, flip, rotate, and/or the like between various differentkeyboards, for example, associated with different languages, alphabets,and/or the like (e.g., the illustrated qwerty keyboard, and/or thelike). In accordance with aspects of the disclosure, such keyboards caninclude an animated-image keyboard configured to present (e.g., forbrowsing, selection, and/or the like) various different animated images.

At (208), a user can perform one or more actions that provide one ormore different and distinct contexts associated with computing device40. The context(s) provided can be of computing device 40, the dynamickeyboard interface, the application associated with portion 312, and/orthe like. For example, the user can locate computing device 40 at aparticular geographic location, interact with the application associatedwith portion 312 via its interface, and/or the like.

At (210), computing device 40 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 312,and/or the like (e.g., “We're at the coast.”; “Nice! Enjoy the beach.”;and/or the like).

Based at least in part on the data indicating the context(s), therecord(s) regarding the corpus of animated images, and/or the like, at(212), computing system 112 can identify a plurality of differentanimated images associated with the context(s) for presentation by thedynamic keyboard interface in association with the applicationassociated with portion 312 (e.g., animated images relevant, responsive,and/or the like to the context(s)).

In some embodiments, one or more of the plurality of different animatedimages associated with the context(s) can include one or moreadvertisements (e.g., for one or more products, services, media contentitems, and/or the like). For example, such animated image(s) can includeadvertisement content, data (e.g., a link, and/or the like) configuredto cause an application executed by computing device(s) 40 and/or 50(e.g., a web browser, an application associated with the subject,source, and/or the like of the advertisement, and/or the like) topresent, navigate to, and/or the like content associated with theadvertisement, advertisement content, and/or the like.

In accordance with aspects of the disclosure, based at least in part onthe data indicating the context(s), the record(s) regarding the corpusof animated images, and/or the like, computing system 112 can determine,for each of one or more animated images included in the plurality ofdifferent animated images associated with the context(s), a positionwithin the dynamic keyboard interface for presenting the animated image.

At (214), computing system 112 can generate data indicating theplurality of different animated images associated with the context(s),their respective determined positions, and/or the like and cancommunicate such data to computing device 40 (e.g., to the dynamickeyboard interface), which can receive the data.

Referring to FIG. 3D, responsive to the user invoking element 320,and/or the like, the dynamic keyboard interface can toggle (e.g., fromthe qwerty keyboard, and/or the like) to the illustrated animated-imagekeyboard, and/or the like, which can present the plurality of differentanimated images associated with the context(s) based at least in part ontheir respective determined positions. For example, the plurality ofdifferent animated images associated with the context(s) can bepresented in an ordered, sorted, and/or the like fashion (e.g., animatedimages determined to be more relevant, responsive, and/or the like tothe context(s) can be presented earlier, more prominently, and/or thelike).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 324, 326, and 328, amongst others of theplurality of different animated images associated with the context(s)and/or the like. It will be appreciated that the plurality of differentanimated images associated with the context(s) can include additionalanimated images (not illustrated), which can, for example, be displayedby interacting with the interface (e.g., swiping left, and/or the like).As previously indicated, in some embodiments, one or more of theplurality of different animated images associated with the context(s)can include one or more advertisements. For example, animated image 324can include an advertisement.

At (216), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecontext(s) via the dynamic keyboard interface. In some embodiments, theuser can select one or more of the particular animated image(s) forcommunication (e.g., input, pasting, and/or the like) by the dynamickeyboard interface to the application associated with portion 312.Additionally or alternatively, the user can select one or more of theparticular animated image(s) for future accessibility within the dynamickeyboard interface (e.g., designate such particular animated image(s)for frequent use, “favorite” them, and/or the like). For example,referring to FIG. 3E, the user can select animated image 324 for futureaccessibility within the dynamic keyboard interface (e.g., asillustrated by the star overlaid on animated image 324, and/or thelike).

At (218), computing device 40 can generate data indicating theselection(s), selection type(s) (e.g., for future accessibility, and/orthe like), particular animated image(s) selected (e.g., animated image324, and/or the like) and can communicate such data to computing system112, which can receive the data and, at (220), can update the record(s)regarding the corpus of animated images based at least in part thereon.

Referring to FIG. 2B, at (222), a user can perform one or more actionsthat provide one or more different and distinct current contextsassociated with computing device 40. The context(s) provided can be ofcomputing device 40, the dynamic keyboard interface, the applicationassociated with portion 312, and/or the like. For example, element 322can correspond to a search box for inputting one or more search terms tobe used at least in part to identify one or more animated images, and/orthe like, and, referring to FIG. 3F, the user can invoke element 322 andutilize the illustrated keyboard to input one or more search terms(e.g., “shell,” and/or the like).

At (224), computing device 40 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate the inputted search term(s), and/or thelike.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),and/or the like), the data indicating the previous selection(s),selection type(s), particular animated image(s) selected, and/or thelike (e.g., received at (218), and/or the like), the record(s) regardingthe corpus of animated images, and/or the like, at (226), computingsystem 112 can identify a plurality of different animated imagesassociated with the current context(s) for presentation by the dynamickeyboard interface in association with the application associated withportion 312 (e.g., animated images relevant, responsive, and/or the liketo the current context(s)). In some embodiments, one or more of theplurality of different animated images associated with the currentcontext(s) can include one or more advertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),and/or the like), the data indicating the previous selection(s),selection type(s), particular animated image(s) selected, and/or thelike (e.g., received at (218), and/or the like), the record(s) regardingthe corpus of animated images, and/or the like, computing system 112 candetermine, for each of one or more animated images included in theplurality of different animated images associated with the currentcontext(s), a position within the dynamic keyboard interface forpresenting the animated image.

At (228), computing system 112 can generate data indicating theplurality of different animated images associated with the currentcontext(s), their respective determined positions, and/or the like andcan communicate such data to computing device 40 (e.g., to the dynamickeyboard interface), which can receive the data and, referring to FIG.3G, can toggle (e.g., from the qwerty keyboard, and/or the like) to theillustrated animated-image keyboard, and/or the like, which can presentthe plurality of different animated images associated with the currentcontext(s) based at least in part on their respective determinedpositions. For example, the plurality of different animated imagesassociated with the current context(s) can be presented in an ordered,sorted, and/or the like fashion (e.g., animated images determined to bemore relevant, responsive, and/or the like to the current context(s) canbe presented earlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 326, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like. As previously indicated, in someembodiments, one or more of the plurality of different animated imagesassociated with the context(s) can include one or more advertisements.For example, animated image 330 can include an advertisement.

At (230), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecurrent context(s) via the dynamic keyboard interface. For example,referring to FIG. 3H, the user can select animated images 330 and 332for communication by the dynamic keyboard interface to the applicationassociated with portion 312, and/or the like, and, referring to FIG. 3I,responsive to the user invoking element 318, and/or the like, thedynamic keyboard interface can communicate animated images 330 and 332to the application associated with portion 312, and/or the like.

At (232), computing device 40 can generate data indicating theselection(s), selection type(s) (e.g., for communication to theapplication associated with portion 312, and/or the like), particularanimated image(s) selected (e.g., animated images 330 and 332, and/orthe like) and can communicate such data to computing system 112, whichcan receive the data and, at (234), can update the record(s) regardingthe corpus of animated images based at least in part thereon.

At (236), a user can perform one or more actions that provide one ormore different and distinct current contexts associated with computingdevice 40. The context(s) provided can be of computing device 40, thedynamic keyboard interface, the application associated with portion 312,and/or the like. For example, referring to FIG. 3J, the user caninteract with the application associated with portion 312 via itsinterface (e.g., switch from the message conversation with “Joe Friend”to a message conversation with “Cool Cat,” and/or the like).

At (238), computing device 40 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 312,and/or the like (e.g., “Let's go to the shore.”; and/or the like).

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), and/or the like), the data indicating the previous selection(s),selection type(s), particular animated image(s) selected, and/or thelike (e.g., received at (218), (232), and/or the like), the record(s)regarding the corpus of animated images, and/or the like, at (240),computing system 112 can identify a plurality of different animatedimages associated with the current context(s) for presentation by thedynamic keyboard interface in association with the applicationassociated with portion 312 (e.g., animated images relevant, responsive,and/or the like to the current context(s)). In some embodiments, one ormore of the plurality of different animated images associated with thecurrent context(s) can include one or more advertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), and/or the like), the data indicating the previous selection(s),selection type(s), particular animated image(s) selected, and/or thelike (e.g., received at (218), (232), and/or the like), the record(s)regarding the corpus of animated images, and/or the like, computingsystem 112 can determine, for each of one or more animated imagesincluded in the plurality of different animated images associated withthe current context(s), a position within the dynamic keyboard interfacefor presenting the animated image.

Referring to FIG. 2C, at (242), computing system 112 can generate dataindicating the plurality of different animated images associated withthe current context(s), their respective determined positions, and/orthe like and can communicate such data to computing device 40 (e.g., tothe dynamic keyboard interface), which can receive the data.

Referring to FIG. 3K, responsive to the user invoking element 320,and/or the like, the dynamic keyboard interface can toggle (e.g., fromthe qwerty keyboard, and/or the like) to the illustrated animated-imagekeyboard, and/or the like, which can present the plurality of differentanimated images associated with the current context(s) based at least inpart on their respective determined positions. For example, theplurality of different animated images associated with the currentcontext(s) can be presented in an ordered, sorted, and/or the likefashion (e.g., animated images determined to be more relevant,responsive, and/or the like to the current context(s) can be presentedearlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 324, 328, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like.

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s) caninclude one or more of the particular animated image(s) previouslyselected (e.g., animated images 324, 330, 332, and/or the like). In someof such embodiments, the position within the dynamic keyboard interfacefor presenting such particular animated image(s) can be determined basedat least in part on their having been previously selected, the previouscontext(s) associated with their selection, and/or the like. Forexample, such particular animated image(s) can be presented earlier,more prominently, and/or the like than they otherwise would have been(e.g., absent their previous selection, and/or the like). In someembodiments, one or more of such particular animated image(s) caninclude one or more advertisements.

As previously indicated, in some embodiments, the data indicating thecurrent context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 312,and/or the like (e.g., “Let's go to the shore.”; and/or the like). Insome of such embodiments, for one or more animated images of theanimated image(s) included in the plurality of different animated imagesassociated with the current context(s) (e.g., animated images 324, 330,332, and/or the like), determining the position(s) within the dynamickeyboard interface for presenting such animated image(s) can includedetermining the data presented by and/or input into the dynamic keyboardinterface, one or more applications associated with one or more of theprevious context(s), and/or the like indicated by the data indicatingone or more of the previous context(s) (e.g., “We're at the coast”;“Nice! Enjoy the beach.”; and/or the like) corresponds at least in partto the data presented by and/or input into the dynamic keyboardinterface, the application associated with portion 312, and/or the likeindicated by the data indicating the current context(s) (e.g., “Let's goto the shore.”; and/or the like).

In some embodiments, data indicating one or more of the previouscontext(s) can indicate a human-language setting associated with a userdevice on which the application associated with the previous context isexecuted; a geographic area to which such user device is registered; anetwork identifier associated with such user device; a geographiclocation of such user device associated with the selection of theparticular animated image(s); a time associated with the selection ofthe particular animated image(s); a time of day associated with theselection of the particular animated image(s); a date associated withthe selection of the particular animated image(s); a day of weekassociated with the selection of the particular animated image(s); amonth associated with the selection of the particular animated image(s);a year associated with the selection of the particular animatedimage(s); a size of an audience associated with the selection of theparticular animated image(s); an entity that provided one or more of theparticular animated image(s) and/or content included in one or more ofthe particular animated image(s); and/or the like. In some of suchembodiments, the data indicating the current context(s) can include datacorresponding at least in part to the human-language setting, thegeographic area, the network identifier, the geographic location, thetime, the time of day, the date, the day of week, the month, the year,the size of the audience, the entity, and/or the like.

In some embodiments, data indicating one or more of the previouscontext(s) can indicate an animated image previously selected via thedynamic keyboard interface, a time when the animated image previouslyselected via the dynamic keyboard interface was selected, and/or thelike. In some of such embodiments, the data indicating the currentcontext(s) can include data indicating selection of the animated imagepreviously selected via the dynamic keyboard interface, a timeassociated with the selection of the animated image previously selectedvia the dynamic keyboard interface, and/or the like.

In some embodiments, data indicating one or more of the previouscontext(s); the data indicating the previous selection(s), selectiontype(s), particular animated image(s) selected, and/or the like; therecord(s) regarding the corpus of animated images; and/or the like canindicate an amount of time between the selection of the particularanimated image(s) and a time when the plurality of different animatedimages including the particular animated image(s) was presented by thedynamic keyboard interface, a time when the particular animated image(s)selected were initially made available for selection from amongst suchplurality of different animated images by the dynamic keyboardinterface, and/or the like. In some of such embodiments, for at leastone animated image of the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s),determining the position within the dynamic keyboard interface forpresenting such animated image can include determining such positionbased at least in part on the data indicating the amount of time.

In some embodiments, determining such position based at least in part onthe data indicating the amount of time can include normalizing the dataindicating the amount of time based at least in part on a position ofsuch animated image within the dynamic keyboard interface when theplurality of different animated images including the particular animatedimage(s) was presented by the dynamic keyboard interface, a position ofsuch animated image within the dynamic keyboard interface when suchanimated image was initially made available for selection from amongstthe plurality of different animated images including the particularanimated image(s) by the dynamic keyboard interface, and/or the like.

At (244), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecurrent context(s) via the dynamic keyboard interface. For example,referring to FIG. 3L, the user can select animated image 324 forcommunication by the dynamic keyboard interface to the applicationassociated with portion 312, and/or the like, and, referring to FIG. 3M,responsive to the user invoking element 318, and/or the like, thedynamic keyboard interface can communicate animated image 324 to theapplication associated with portion 312, and/or the like.

At (246), computing device 40 can generate data indicating theselection(s), selection type(s) (e.g., for communication to theapplication associated with portion 312, and/or the like), particularanimated image(s) selected (e.g., animated image 324, and/or the like)and can communicate such data to computing system 112, which can receivethe data and, at (248), can update the record(s) regarding the corpus ofanimated images based at least in part thereon.

At (250), a user can perform one or more actions that provide one ormore different and distinct current contexts associated with computingdevice 40. For example, referring to FIG. 3N, the user can switch fromthe application (e.g., the messaging application, and/or the like)associated with element 302 to the application (e.g., the emailapplication, and/or the like) associated with element 304. Portion 334can be associated with the application associated with element 304, and,as illustrated, the dynamic keyboard interface can be provided inassociation with such application. The context(s) provided can be ofcomputing device 40, the dynamic keyboard interface, the applicationassociated with portion 334, and/or the like.

At (252), computing device 40 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 334,and/or the like (e.g., “I'm going to be at the coast.”; and/or thelike).

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), and/or the like), the data indicating the previousselection(s), selection type(s), particular animated image(s) selected,and/or the like (e.g., received at (218), (232), (246), and/or thelike), the record(s) regarding the corpus of animated images, and/or thelike, at (254), computing system 112 can identify a plurality ofdifferent animated images associated with the current context(s) forpresentation by the dynamic keyboard interface in association with theapplication associated with portion 334 (e.g., animated images relevant,responsive, and/or the like to the current context(s)). In someembodiments, one or more of the plurality of different animated imagesassociated with the current context(s) can include one or moreadvertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), and/or the like), the data indicating the previousselection(s), selection type(s), particular animated image(s) selected,and/or the like (e.g., received at (218), (232), (246), and/or thelike), the record(s) regarding the corpus of animated images, and/or thelike, computing system 112 can determine, for each of one or moreanimated images included in the plurality of different animated imagesassociated with the current context(s), a position within the dynamickeyboard interface for presenting the animated image.

At (256), computing system 112 can generate data indicating theplurality of different animated images associated with the currentcontext(s), their respective determined positions, and/or the like andcan communicate such data to computing device 40 (e.g., to the dynamickeyboard interface), which can receive the data.

Referring to FIG. 3O, responsive to the user invoking element 320,and/or the like, the dynamic keyboard interface can toggle (e.g., fromthe qwerty keyboard, and/or the like) to the illustrated animated-imagekeyboard, and/or the like, which can present the plurality of differentanimated images associated with the current context(s) based at least inpart on their respective determined positions. For example, theplurality of different animated images associated with the currentcontext(s) can be presented in an ordered, sorted, and/or the likefashion (e.g., animated images determined to be more relevant,responsive, and/or the like to the current context(s) can be presentedearlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 324, 328, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like.

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s) caninclude one or more of the particular animated image(s) previouslyselected (e.g., animated images 324, 330, 332, and/or the like). In someof such embodiments, the position within the dynamic keyboard interfacefor presenting such particular animated image(s) can be determined basedat least in part on their having been previously selected, the previouscontext(s) associated with their selection, and/or the like. Forexample, such particular animated image(s) can be presented earlier,more prominently, and/or the like than they otherwise would have been(e.g., absent their previous selection, and/or the like). In someembodiments, one or more of such particular animated image(s) caninclude one or more advertisements.

As previously indicated, in some embodiments, the data indicating thecurrent context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 334,and/or the like (e.g., “I'm going to be at the coast”; and/or the like).In some of such embodiments, for one or more animated images of theanimated image(s) included in the plurality of different animated imagesassociated with the current context(s) (e.g., animated images 324, 330,332, and/or the like), determining the position(s) within the dynamickeyboard interface for presenting such animated image(s) can includedetermining the data presented by and/or input into the dynamic keyboardinterface, one or more applications associated with one or more of theprevious context(s), and/or the like indicated by the data indicatingone or more of the previous context(s) (e.g., “We're at the coast”;“Nice! Enjoy the beach.”; “Let's go to the shore.”; and/or the like)corresponds at least in part to the data presented by and/or input intothe dynamic keyboard interface, the application associated with portion334, and/or the like indicated by the data indicating the currentcontext(s) (e.g., “I'm going to be at the coast”; and/or the like).

At (258), a user can perform one or more actions that provide one ormore different and distinct current contexts associated with computingdevice 40. The context(s) provided can be of computing device 40, thedynamic keyboard interface, the application associated with portion 334,and/or the like. For example, referring to FIG. 3P, the user can invokeelement 322 and utilize the illustrated keyboard to input one or moresearch terms (e.g., “shell,” and/or the like).

At (260), computing device 40 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate the inputted search term(s), and/or thelike.

Referring to FIG. 2D, based at least in part on the data indicating thecurrent context(s), the data indicating the previous context(s) (e.g.,received at (210), (224), (238), (252), and/or the like), the dataindicating the previous selection(s), selection type(s), particularanimated image(s) selected, and/or the like (e.g., received at (218),(232), (246), and/or the like), the record(s) regarding the corpus ofanimated images, and/or the like, at (262), computing system 112 canidentify a plurality of different animated images associated with thecurrent context(s) for presentation by the dynamic keyboard interface inassociation with the application associated with portion 334 (e.g.,animated images relevant, responsive, and/or the like to the currentcontext(s)). In some embodiments, one or more of the plurality ofdifferent animated images associated with the current context(s) caninclude one or more advertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), (252), and/or the like), the data indicating the previousselection(s), selection type(s), particular animated image(s) selected,and/or the like (e.g., received at (218), (232), (246), and/or thelike), the record(s) regarding the corpus of animated images, and/or thelike, computing system 112 can determine, for each of one or moreanimated images included in the plurality of different animated imagesassociated with the current context(s), a position within the dynamickeyboard interface for presenting the animated image.

At (264), computing system 112 can generate data indicating theplurality of different animated images associated with the currentcontext(s), their respective determined positions, and/or the like andcan communicate such data to computing device 40 (e.g., to the dynamickeyboard interface), which can receive the data and, referring to FIG.3Q, can toggle (e.g., from the qwerty keyboard, and/or the like) to theillustrated animated-image keyboard, and/or the like, which can presentthe plurality of different animated images associated with the currentcontext(s) based at least in part on their respective determinedpositions. For example, the plurality of different animated imagesassociated with the current context(s) can be presented in an ordered,sorted, and/or the like fashion (e.g., animated images determined to bemore relevant, responsive, and/or the like to the current context(s) canbe presented earlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 326, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like.

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s) caninclude one or more of the particular animated image(s) previouslyselected (e.g., animated images 330, 332, and/or the like). In some ofsuch embodiments, the position within the dynamic keyboard interface forpresenting such particular animated image(s) can be determined based atleast in part on their having been previously selected, the previouscontext(s) associated with their selection, and/or the like. Forexample, such particular animated image(s) can be presented earlier,more prominently, and/or the like than they otherwise would have been(e.g., absent their previous selection, and/or the like). In someembodiments, one or more of such particular animated image(s) caninclude one or more advertisements.

In some embodiments, for at least one animated image of the animatedimage(s) included in the plurality of different animated imagesassociated with the current context(s), determining the position withinthe dynamic keyboard interface for presenting such animated image caninclude determining, based at least in part on previously received dataindicating the selection of such animated image, a selection frequencyfor such animated image. In some of such embodiments, the position forsuch animated image can be determined based at least in part on theselection frequency for such animated image, one or more selectionfrequencies for such position, and/or the like.

In some embodiments, computing system 112 can determine the one or moreselection frequencies for such position based at least in part on dataindicating one or more selection frequencies for one or more animatedimages previously presented in such position within the dynamic keyboardinterface. In some embodiments, the animated image(s) previouslypresented in such position can include one or more animated images thatdo not include advertisement content. Additionally or alternatively, theanimated image(s) previously presented in such position can include oneor more animated images comprising one or more advertisements differentfrom an advertisement included in the animated image for which theposition is being determined. In some embodiments, computing system 112can determine the one or more selection frequencies for such positionbased at least in part on data indicating one or more previous contextsfor which the animated image(s) were previously presented in suchposition.

At (266), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecurrent context(s) via the dynamic keyboard interface. For example, theuser can select animated image 326 for communication by the dynamickeyboard interface to the application associated with portion 334,and/or the like, and, referring to FIG. 3R, the dynamic keyboardinterface can communicate animated image 326 to the applicationassociated with portion 334, and/or the like.

At (268), computing device 40 can generate data indicating theselection(s), selection type(s) (e.g., for communication to theapplication associated with portion 334, and/or the like), particularanimated image(s) selected (e.g., animated image 326, and/or the like)and can communicate such data to computing system 112, which can receivethe data and, at (270), can update the record(s) regarding the corpus ofanimated images based at least in part thereon.

At (272), a user can perform one or more actions that provide one ormore different and distinct current contexts associated with computingdevice 50. The context(s) provided can be of computing device 50, thedynamic keyboard interface, the application associated with portion 312,and/or the like. For example, referring to FIG. 3S, the user caninteract with the application associated with portion 312 via itsinterface (e.g., switch to a message conversation with “John S.,” and/orthe like).

At (274), computing device 50 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 312,and/or the like (e.g., “consectetur shore,” and/or the like).

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), (252), (260), and/or the like), the data indicating theprevious selection(s), selection type(s), particular animated image(s)selected, and/or the like (e.g., received at (218), (232), (246), (268),and/or the like), the record(s) regarding the corpus of animated images,and/or the like, at (276), computing system 112 can identify a pluralityof different animated images associated with the current context(s) forpresentation by the dynamic keyboard interface in association with theapplication associated with portion 312 (e.g., animated images relevant,responsive, and/or the like to the current context(s)). In someembodiments, one or more of the plurality of different animated imagesassociated with the current context(s) can include one or moreadvertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), (252), (260), and/or the like), the data indicating theprevious selection(s), selection type(s), particular animated image(s)selected, and/or the like (e.g., received at (218), (232), (246), (268),and/or the like), the record(s) regarding the corpus of animated images,and/or the like, computing system 112 can determine, for each of one ormore animated images included in the plurality of different animatedimages associated with the current context(s), a position within thedynamic keyboard interface for presenting the animated image.

At (278), computing system 112 can generate data indicating theplurality of different animated images associated with the currentcontext(s), their respective determined positions, and/or the like andcan communicate such data to computing device 50 (e.g., to the dynamickeyboard interface), which can receive the data.

Referring to FIG. 3T, responsive to the user invoking element 320,and/or the like, the dynamic keyboard interface can toggle (e.g., fromthe qwerty keyboard, and/or the like) to the illustrated animated-imagekeyboard, and/or the like, which can present the plurality of differentanimated images associated with the current context(s) based at least inpart on their respective determined positions. For example, theplurality of different animated images associated with the currentcontext(s) can be presented in an ordered, sorted, and/or the likefashion (e.g., animated images determined to be more relevant,responsive, and/or the like to the current context(s) can be presentedearlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 324, 328, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like.

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s) caninclude one or more of the particular animated image(s) previouslyselected (e.g., animated images 324, 330, 332, and/or the like). In someof such embodiments, the position within the dynamic keyboard interfacefor presenting such particular animated image(s) can be determined basedat least in part on their having been previously selected, the previouscontext(s) associated with their selection, and/or the like. Forexample, such particular animated image(s) can be presented earlier,more prominently, and/or the like than they otherwise would have been(e.g., absent their previous selection, and/or the like). In someembodiments, one or more of such particular animated image(s) caninclude one or more advertisements.

As previously indicated, in some embodiments, the data indicating thecurrent context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 312,and/or the like (e.g., “consectetur shore,” and/or the like). In some ofsuch embodiments, for one or more animated images of the animatedimage(s) included in the plurality of different animated imagesassociated with the current context(s) (e.g., animated images 324, 330,332, and/or the like), determining the position(s) within the dynamickeyboard interface for presenting such animated image(s) can includedetermining the data presented by and/or input into the dynamic keyboardinterface, one or more applications associated with one or more of theprevious context(s), and/or the like indicated by the data indicatingone or more of the previous context(s) (e.g., “We're at the coast”;“Nice! Enjoy the beach.”; “Let's go to the shore.”; “I'm going to be atthe coast”; and/or the like) corresponds at least in part to the datapresented by and/or input into the dynamic keyboard interface, theapplication associated with portion 312, and/or the like indicated bythe data indicating the current context(s) (e.g., “consectetur shore,”and/or the like).

At (280), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecurrent context(s) via the dynamic keyboard interface. For example,referring to FIG. 3U, the user can select animated image 328 forcommunication by the dynamic keyboard interface to the applicationassociated with portion 312, and/or the like, and, referring to FIG. 3V,responsive to the user invoking element 318, and/or the like, thedynamic keyboard interface can communicate animated image 328 to theapplication associated with portion 312, and/or the like.

Referring to FIG. 2E, at (282), computing device 50 can generate dataindicating the selection(s), selection type(s) (e.g., for communicationto the application associated with portion 312, and/or the like),particular animated image(s) selected (e.g., animated image 328, and/orthe like) and can communicate such data to computing system 112, whichcan receive the data and, at (284), can update the record(s) regardingthe corpus of animated images based at least in part thereon.

At (286), a user can perform one or more actions that provide one ormore different and distinct current contexts associated with computingdevice 50. For example, referring to FIG. 3W, the user can switch fromthe application (e.g., the messaging application, and/or the like)associated with element 302 to the application (e.g., the emailapplication, and/or the like) associated with element 304. Thecontext(s) provided can be of computing device 50, the dynamic keyboardinterface, the application associated with portion 334, and/or the like.

At (288), computing device 50 (e.g., the dynamic keyboard interface,and/or the like) can generate data indicating such context(s) and cancommunicate such data to computing system 112, which can receive thedata and update the record(s) regarding the corpus of animated imagesbased at least in part thereon. In some embodiments, the data indicatingthe context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 334,and/or the like (e.g., “consectetur shore,” and/or the like).

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), (252), (260), (274), and/or the like), the data indicatingthe previous selection(s), selection type(s), particular animatedimage(s) selected, and/or the like (e.g., received at (218), (232),(246), (268), (282), and/or the like), the record(s) regarding thecorpus of animated images, and/or the like, at (290), computing system112 can identify a plurality of different animated images associatedwith the current context(s) for presentation by the dynamic keyboardinterface in association with the application associated with portion334 (e.g., animated images relevant, responsive, and/or the like to thecurrent context(s)). In some embodiments, one or more of the pluralityof different animated images associated with the current context(s) caninclude one or more advertisements.

Based at least in part on the data indicating the current context(s),the data indicating the previous context(s) (e.g., received at (210),(224), (238), (252), (260), (274), and/or the like), the data indicatingthe previous selection(s), selection type(s), particular animatedimage(s) selected, and/or the like (e.g., received at (218), (232),(246), (268), (282), and/or the like), the record(s) regarding thecorpus of animated images, and/or the like, computing system 112 candetermine, for each of one or more animated images included in theplurality of different animated images associated with the currentcontext(s), a position within the dynamic keyboard interface forpresenting the animated image.

At (292), computing system 112 can generate data indicating theplurality of different animated images associated with the currentcontext(s), their respective determined positions, and/or the like andcan communicate such data to computing device 50 (e.g., to the dynamickeyboard interface), which can receive the data.

Referring to FIG. 3X, responsive to the user invoking element 320,and/or the like, the dynamic keyboard interface can toggle (e.g., fromthe qwerty keyboard, and/or the like) to the illustrated animated-imagekeyboard, and/or the like, which can present the plurality of differentanimated images associated with the current context(s) based at least inpart on their respective determined positions. For example, theplurality of different animated images associated with the currentcontext(s) can be presented in an ordered, sorted, and/or the likefashion (e.g., animated images determined to be more relevant,responsive, and/or the like to the current context(s) can be presentedearlier, more prominently, and/or the like).

As illustrated, multiple different animated images from the plurality ofdifferent animated images associated with the current context(s) can besimultaneously displayed by the dynamic keyboard interface alongside oneanother. For example, the dynamic keyboard interface can simultaneouslydisplay animated images 324, 328, 330, and 332, amongst others of theplurality of different animated images associated with the currentcontext(s), and/or the like.

In some embodiments, the animated image(s) included in the plurality ofdifferent animated images associated with the current context(s) caninclude one or more of the particular animated image(s) previouslyselected (e.g., animated images 324, 328, 330, 332, and/or the like). Insome of such embodiments, the position within the dynamic keyboardinterface for presenting such particular animated image(s) can bedetermined based at least in part on their having been previouslyselected, the previous context(s) associated with their selection,and/or the like. For example, such particular animated image(s) can bepresented earlier, more prominently, and/or the like than they otherwisewould have been (e.g., absent their previous selection, and/or thelike). In some embodiments, one or more of such particular animatedimage(s) can include one or more advertisements.

As previously indicated, in some embodiments, the data indicating thecurrent context(s) can indicate data presented by and/or input into thedynamic keyboard interface, the application associated with portion 334,and/or the like (e.g., “consectetur shore,” and/or the like). In some ofsuch embodiments, for one or more animated images of the animatedimage(s) included in the plurality of different animated imagesassociated with the current context(s) (e.g., animated images 324, 328,330, 332, and/or the like), determining the position(s) within thedynamic keyboard interface for presenting such animated image(s) caninclude determining the data presented by and/or input into the dynamickeyboard interface, one or more applications associated with one or moreof the previous context(s), and/or the like indicated by the dataindicating one or more of the previous context(s) (e.g., “We're at thecoast”; “Nice! Enjoy the beach.”; “Let's go to the shore.”; “I'm goingto be at the coast”; “consectetur shore”; and/or the like) correspondsat least in part to the data presented by and/or input into the dynamickeyboard interface, the application associated with portion 334, and/orthe like indicated by the data indicating the current context(s) (e.g.,“consectetur shore,” and/or the like).

At (294), a user can select one or more particular animated images fromamongst the plurality of different animated images associated with thecurrent context(s) via the dynamic keyboard interface. For example, theuser can select animated image 328 for communication by the dynamickeyboard interface to the application associated with portion 334,and/or the like, and, referring to FIG. 3Y, the dynamic keyboardinterface can communicate animated image 328 to the applicationassociated with portion 334, and/or the like.

At (296), computing device 50 can generate data indicating theselection(s), selection type(s) (e.g., for communication to theapplication associated with portion 334, and/or the like), particularanimated image(s) selected (e.g., animated image 328, and/or the like)and can communicate such data to computing system 112, which can receivethe data and, at (298), can update the record(s) regarding the corpus ofanimated images based at least in part thereon.

At (299), computing system 112 can generate, and communicate tocomputing device 10, data describing a report for an entity thatprovided one or more particular animated images, for example, one ormore animated images including one or more advertisements (e.g.,animated images 324, 330, and/or the like). For example, computingdevice 10 can be associated with an entity that provided such animatedimage(s), advertisement(s), and/or the like. In some embodiments, thereport can be generated based at least in part on one or more determinedselection frequencies for such animated image(s), one or more determinedselection frequencies for one or more positions determined for suchanimated image(s), and/or the like.

FIG. 4 depicts an example method according to example embodiments of thepresent disclosure.

Referring to FIG. 4, at (402), one or more computing devices canreceive, from a user device on which an application is executed, dataindicating a context of: the application, and/or a dynamic keyboardinterface provided in association with the application. For example,computing system 112 can receive, from computing device 40, dataindicating a context of: the application associated with portion 312(e.g., the messaging application, and/or the like), and/or the dynamickeyboard interface provided in association therewith.

At (404), the computing device(s) can identify, based at least in parton the data indicating the context, a plurality of different animatedimages for presentation by the dynamic keyboard interface in associationwith the application. The plurality of different animated images cancomprise an animated image including an advertisement. For example,computing system 112 can identify, based at least in part on the datareceived from computing device 40, the plurality of different animatedimages included in the animated-image keyboard depicted by FIG. 3D(e.g., animated images 324, 326, 328, and/or the like) for presentationby the dynamic keyboard interface in association with the applicationassociated with portion 312.

At (406), the computing device(s) can communicate, to the user device,data indicating the plurality of different animated images. For example,computing system 112 can communicate, to computing device 40, dataindicating the plurality of different animated images included in theanimated-image keyboard depicted by FIG. 3D (e.g., animated images 324,326, 328, and/or the like).

At (408), the computing device(s) can receive, from the user device,data indicating selection of the animated image including theadvertisement from amongst the plurality of different animated images.For example, computing system 112 can receive, from computing device 40,data indicating selection of animated image 324.

At (410), the computing device(s) can receive data indicating asubsequent context of: the dynamic keyboard interface, the application,and/or a different and distinct application in association with whichthe dynamic keyboard interface is provided. For example, computingsystem 112 can receive, from computing device 50, data indicating acontext of: the application associated with portion 334 (e.g., the emailapplication, and/or the like), and/or the dynamic keyboard interfaceprovided in association therewith.

At (412), the computing device(s) can identify, based at least in parton the data indicating the subsequent context, a plurality of differentanimated images for presentation by the dynamic keyboard interface inassociation with the application and/or the different and distinctapplication. For example, computing system 112 can identify, based atleast in part on the data received from computing device 50, theplurality of different animated images included in the animated-imagekeyboard depicted by FIG. 3X (e.g., animated images 324, 328, 330, 332,and/or the like) for presentation by the dynamic keyboard interface inassociation with the application associated with portion 334.

At (414), the computing device(s) can determine, based at least in parton the data indicating the selection and the data indicating thecontext, a position within the dynamic keyboard interface for presentingthe animated image including the advertisement in response to dataindicating the subsequent context. For example, computing system 112 canidentify, based at least in part on the data indicating the selection ofanimated image 324, a position within the dynamic keyboard interface forpresenting animated image 324 in response to data indicating the contextof: the application associated with portion 334 (e.g., the emailapplication, and/or the like), and/or the dynamic keyboard interfaceprovided in association therewith.

The technology discussed herein makes reference to servers, databases,software applications, and/or other computer-based systems, as well asactions taken and information sent to and/or from such systems. Theinherent flexibility of computer-based systems allows for a greatvariety of possible configurations, combinations, and/or divisions oftasks and/or functionality between and/or among components. Forinstance, processes discussed herein can be implemented using a singledevice or component and/or multiple devices or components working incombination. Databases and/or applications can be implemented on asingle system and/or distributed across multiple systems. Distributedcomponents can operate sequentially and/or in parallel.

Various connections between elements are discussed in the abovedescription. These connections are general and, unless specifiedotherwise, can be direct and/or indirect, wired and/or wireless. In thisrespect, the specification is not intended to be limiting.

The depicted and/or described steps are merely illustrative and can beomitted, combined, and/or performed in an order other than that depictedand/or described; the numbering of depicted steps is merely for ease ofreference and does not imply any particular ordering is necessary orpreferred.

The functions and/or steps described herein can be embodied incomputer-usable data and/or computer-executable instructions, executedby one or more computers and/or other devices to perform one or morefunctions described herein. Generally, such data and/or instructionsinclude routines, programs, objects, components, data structures, or thelike that perform particular tasks and/or implement particular datatypes when executed by one or more processors in a computer and/or otherdata-processing device. The computer-executable instructions can bestored on a computer-readable medium such as a hard disk, optical disk,removable storage media, solid-state memory, read-only memory (ROM),random-access memory (RAM), or the like. As will be appreciated, thefunctionality of such instructions can be combined and/or distributed asdesired. In addition, the functionality can be embodied in whole or inpart in firmware and/or hardware equivalents, such as integratedcircuits, application-specific integrated circuits (ASICs),field-programmable gate arrays (FPGAs), or the like. Particular datastructures can be used to more effectively implement one or more aspectsof the disclosure, and such data structures are contemplated to bewithin the scope of computer-executable instructions and/orcomputer-usable data described herein.

Although not required, one of ordinary skill in the art will appreciatethat various aspects described herein can be embodied as a method,system, apparatus, and/or one or more computer-readable media storingcomputer-executable instructions. Accordingly, aspects can take the formof an entirely hardware embodiment, an entirely software embodiment, anentirely firmware embodiment, and/or an embodiment combining software,hardware, and/or firmware aspects in any combination.

As described herein, the various methods and acts can be operativeacross one or more computing devices and/or networks. The functionalitycan be distributed in any manner or can be located in a single computingdevice (e.g., server, client computer, user device, or the like).

Aspects of the disclosure have been described in terms of illustrativeembodiments thereof. Numerous other embodiments, modifications, and/orvariations within the scope and spirit of the appended claims can occurto persons of ordinary skill in the art from a review of thisdisclosure. For example, one or ordinary skill in the art can appreciatethat the steps depicted and/or described can be performed in other thanthe recited order and/or that one or more illustrated steps can beoptional and/or combined. Any and all features in the following claimscan be combined and/or rearranged in any way possible.

While the present subject matter has been described in detail withrespect to various specific example embodiments thereof, each example isprovided by way of explanation, not limitation of the disclosure. Thoseskilled in the art, upon attaining an understanding of the foregoing,can readily produce alterations to, variations of, and/or equivalents tosuch embodiments. Accordingly, the subject disclosure does not precludeinclusion of such modifications, variations, and/or additions to thepresent subject matter as would be readily apparent to one of ordinaryskill in the art. For instance, features illustrated and/or described aspart of one embodiment can be used with another embodiment to yield astill further embodiment. Thus, it is intended that the presentdisclosure cover such alterations, variations, and/or equivalents.

What is claimed is:
 1. A computer-implemented method comprising: receiving, by one or more computing devices and from a user device on which an application is executed, data indicating a context of one or more of: the application, or a dynamic keyboard interface provided in association with the application; identifying, by the one or more computing devices and based at least in part on the data indicating the context, a plurality of different animated images for presentation by the dynamic keyboard interface in association with the application, the plurality of different animated images comprising an animated image including an advertisement; communicating, by the one or more computing devices and to the user device, data indicating the plurality of different animated images; receiving, by the one or more computing devices and from the user device, data indicating a selection of the animated image including the advertisement from amongst the plurality of different animated images; and determining, by the one or more computing devices and based at least in part on the data indicating the selection and the data indicating the context, a position within the dynamic keyboard interface for presenting the animated image including the advertisement in response to data indicating a subsequent context of one or more of: the dynamic keyboard interface, the application, or a different and distinct application in association with which the dynamic keyboard interface is provided.
 2. The computer-implemented method of claim 1, wherein the subsequent context comprises a context of the user device when the user device is providing the dynamic keyboard interface in association with the application.
 3. The computer-implemented method of claim 1, wherein the subsequent context comprises a context of the user device when the user device is providing the dynamic keyboard interface in association with the different and distinct application.
 4. The computer-implemented method of claim 1, wherein the subsequent context comprises a context of a different and distinct user device when the different and distinct user device is providing the dynamic keyboard interface in association with the application.
 5. The computer-implemented method of claim 1, wherein the subsequent context comprises a context of a different and distinct user device when the different and distinct user device is providing the dynamic keyboard interface in association with the different and distinct application.
 6. The computer-implemented method of claim 1, wherein receiving the data indicating the selection comprises receiving data indicating the animated image including the advertisement has been selected for communication by the dynamic keyboard interface to the application.
 7. The computer-implemented method of claim 1, wherein receiving the data indicating the selection comprises receiving data indicating the animated image including the advertisement has been selected for future accessibility within the dynamic keyboard interface.
 8. The computer-implemented method of claim 1, wherein determining the position within the dynamic keyboard interface for presenting the animated image including the advertisement comprises: determining, based at least in part on the data indicating the selection, a selection frequency for the animated image including the advertisement; and determining the position based at least in part on the selection frequency for the animated image including the advertisement and one or more selection frequencies for the position.
 9. The computer-implemented method of claim 8, comprising determining, by the one or more computing devices, the one or more selection frequencies for the position based at least in part on data indicating one or more selection frequencies for one or more animated images previously presented in the position within the dynamic keyboard interface.
 10. The computer-implemented method of claim 9, wherein the one or more animated images comprise one or more animated images that do not include advertisement content.
 11. The computer-implemented method of claim 9, wherein the one or more animated images comprise one or more animated images comprising one or more advertisements different from the advertisement included in the animated image.
 12. The computer-implemented method of claim 9, wherein the one or more animated images comprise: one or more animated images that do not include advertisement content; and one or more animated images comprising one or more advertisements different from the advertisement included in the animated image.
 13. The computer-implemented method of claim 8, comprising determining, by the one or more computing devices, the one or more selection frequencies for the position based at least in part on the data indicating the context.
 14. The computer-implemented method of claim 8, comprising: generating, by the one or more computing devices and based at least in part on the selection frequency for the animated image including the advertisement and the one or more selection frequencies for the position, data describing a report for an entity that provided the advertisement included in the animated image; and communicating, by the one or more computing devices, the data describing the report to a computing device associated with the entity that provided the advertisement included in the animated image.
 15. The computer-implemented method of claim 1, wherein: the data indicating the context indicates one or more search terms input via the dynamic keyboard interface; and the data indicating the subsequent context indicates at least one of the one or more search terms input via the dynamic keyboard interface.
 16. The computer-implemented method of claim 1, wherein: the data indicating the context indicates data one or more of presented by or input into the application; the data indicating the subsequent context indicates data one or more of presented by or input into the one or more of the dynamic keyboard interface, the application, or the different and distinct application; and determining the position within the dynamic keyboard interface for presenting the animated image including the advertisement comprises determining the data one or more of presented by or input into the application corresponds at least in part to the data one or more of presented by or input into the one or more of the dynamic keyboard interface, the application, or the different and distinct application.
 17. A system comprising: one or more processors; and a memory storing instructions that when executed by the one or more processors cause the system to perform operations comprising: receiving data indicating a selection, from amongst a plurality of different animated images presented by a dynamic keyboard interface, of an animated image including an advertisement; determining, based at least in part on the data indicating the selection of the animated image including the advertisement, a selection frequency for the animated image including the advertisement; and determining, based at least in part on the selection frequency for the animated image including the advertisement and one or more selection frequencies for a position within the dynamic keyboard interface, to present the animated image including the advertisement in the position within the dynamic keyboard interface.
 18. The system of claim 17, wherein the operations comprise determining the one or more selection frequencies for the position based at least in part on data indicating one or more selection frequencies for one or more animated images previously presented in the position within the dynamic keyboard interface.
 19. The system of claim 18, wherein the one or more animated images comprise one or more of: one or more animated images that do not include advertisement content; or one or more animated images comprising one or more advertisements different from the advertisement included in the animated image.
 20. One or more non-transitory computer-readable media comprising instructions that when executed by one or more computing devices cause the one or more computing devices to perform operations comprising: receiving, from a user device on which an application is executed, data indicating a context of one or more of: the application, or a dynamic keyboard interface provided in association with the application; receiving, from the user device, data indicating a selection, from amongst a plurality of different animated images presented by the dynamic keyboard interface in association with the application, of an animated image including an advertisement; determining, based at least in part on the data indicating the context, one or more selection frequencies for a position within the dynamic keyboard interface; determining, based at least in part on the data indicating the selection of the animated image including the advertisement, a selection frequency for the animated image including the advertisement; and determining, based at least in part on the selection frequency for the animated image including the advertisement and the one or more selection frequencies for the position within the dynamic keyboard interface, to present the animated image including the advertisement in the position within the dynamic keyboard interface. 